/*
 * UAE - The Un*x Amiga Emulator
 *
 * Prototypes for general sound related functions
 * This use to be called sound.h, but that causes confusion
 *
 * Copyright 1997 Bernd Schmidt
 */

#pragma once

extern int sound_available;

extern void (* sample_handler)();
/* sample_evtime is in normal Amiga cycles; scaled_sample_evtime is in our
   event cycles. */
extern float sample_evtime, scaled_sample_evtime;

/* Determine if we can produce any sound at all.  This can be only a guess;
 * if unsure, say yes.  Any call to init_sound may change the value.  */
extern int setup_sound();

extern int init_sound();
extern void close_sound();

extern void sample16_handler();
extern void sample16i_rh_handler();
extern void sample16i_crux_handler();
extern void sample8_handler();
extern void sample16s_handler();
extern void sample16si_anti_handler();
extern void sample16ss_handler();
extern void sample16si_rh_handler();
extern void sample16si_crux_handler();
extern void sample8s_handler();